The present invention is directed to monitors for local-area networks.
Local-area networks are communications systems for enabling data-processing devices to communicate with each other. Many stations on the local-area network are likely to be relatively autonomous, requiring communication with other stations only occasionally. Others require more-frequent communication, and, of course, the amount of communication required by a particular station can vary from time to time. Moreover, stations are often added to, removed from, and moved from place to place within local-area networks without a great deal of central control. For this reason, the manager of the local-area network needs some type of apparatus that monitors the local-area network to collect information such as the amount of traffic used by each source and the communications protocols that the various sources are using. These and other types of information can help to detect impending problems or current system failures.
In the typical local-area network, the basic unit of communication is the packet; any message from one station to another contains at least a single packet, which contains various fields of information in accordance with a predetermined protocol The information typically includes the identity of the source station, the identity of the destination station, and various other information concerning the characteristics of the packet. A typical monitor monitors the communications bus of the local-area network and searches each packet for predetermined information.
The information to be obtained is typically specified by the user, and the amount of processing required in response to each packet typically depends on the amount of information the user specifies. For a given amount of user-specified information, the length of processing per packet is fixed. But the packet length varies. Some packets are quite long, but ETHERNET and IEEE 802.3 packets can be as short as 67.2 microseconds, which is the minimum packet length for these protocols. Accordingly, a burden is imposed on the user to insure that the amount of information requested is not so great as to require more than 67.2 microseconds of processing. Otherwise, the monitor will miss some packets if the packet rate gets too high, and the statistics that it generates will not be reliable.
Another aspect of the monitoring problem appears particularly when two local-area networks are connected. A single local-area-network leg may include, say, a single coaxial cable to which all of the stations are connected. Another leg, which conducts signals on a separate coaxial cable, typically is connected to the first by a bridge, which forwards signals from one leg to the other if the bridge has not observed that the destination is on the same leg as the source. If, in accordance with information obtained by the bridge, it is apparent that the destination station is on the same leg as the source station, the bridge does not forward the message to the second leg. This conserves overall local-area-network bandwidth, but it also means that messages carried on one leg are not necessarily seen on the other. Therefore, it takes more than one monitor to gather comprehensive statistics.
An object of the present invention is to monitor a local-area network in a fashion that guarantees complete statistics regardless of the packet rate and regardless of how many of a predetermined group of possible statistics the user specifies. Another object is to do so in a way that results in complete statistics even if the local-area network is separated into several legs. A further object is to monitor local-area networks in an efficient, reliable manner. Other objects will become apparent as the description proceeds.